package com.gdust.hzx.manager.mapper;

import com.gdust.hzx.model.entity.product.ProductSpec;
import org.apache.ibatis.annotations.Mapper;

import java.util.List;

/**
 * ClassName: ProductSpecMapper
 * Package: com.gdust.spzx.manager.mapper
 * Description:
 * 商品规格数据访问层接口，提供对商品规格表的增删改查操作。
 *
 * 主要功能：
 * - 获取所有商品规格
 * - 分页查询商品规格
 * - 保存商品规格信息
 * - 修改商品规格
 * - 删除指定商品规格
 *
 * @Author syun
 * @Create 2024/12/22 10:15
 * @Version 1.0
 */
@Mapper
public interface ProductSpecMapper {
    /**
     * 获取未分页的商品规格列表
     * @return 商品规格列表。
     */
    List<ProductSpec> findByPage();

    /**
     * 保存商品规格信息到数据库。
     *
     * @param productSpec 商品规格对象，包含规格名称、规格值等属性。
     */
    void save(ProductSpec productSpec);

    /**
     * 更新商品规格信息。
     *
     * @param productSpec 商品规格对象，包含需要更新的字段和对应数据。
     */
    void update(ProductSpec productSpec);

    /**
     * 根据商品规格 ID 删除商品规格记录。
     *
     * @param id 商品规格的唯一标识 ID。
     */
    void delete(Long id);

    /**
     * 查询所有商品规格信息。
     *
     * @return 商品规格列表。
     */
    List<ProductSpec> findAll();
}
